{"version":3,"file":"static/chunks/pages/slots/provider/[provider]-489cdf86ef24e05d.js","sources":["webpack://_N_E/./src/modules/slots/layouts/SlotProvider.layout.tsx","webpack://_N_E/./src/pages/slots/provider/[provider]/index.tsx","webpack://_N_E/?7feb"],"sourceRoot":"","sourcesContent":["import React, { FC, useCallback, useEffect, useState } from 'react';\n\nimport { useGetDataArray } from '@legacyApp/hooks/fetch/useGetDataArray';\nimport {\n\tDEFAULT_GAMES_PAGE,\n\tGAMES_ON_PAGE,\n} from '@modules/slots/constants/SlotMenu.constants';\nimport { useFetchGames } from '@modules/slots/hooks/useFetchGames';\nimport { ProviderDTO, Slot } from '@modules/slots/store/slots.types';\n\nimport { SectionsTabNav } from '@common/components/home/SectionsTabNav/SectionsTabNav';\nimport { Loader } from '@legacyApp/client/components/loader/loader';\nimport { StyledListWrapper } from '@modules/slots/components/ListWrapper.styled';\nimport { NoGames } from '@modules/slots/components/NoGames';\nimport { ProvidersSection } from '@modules/slots/components/ProvidersSection';\nimport { ShowMore } from '@modules/slots/components/ShowMore';\nimport { SlotsBreadcrumbs } from '@modules/slots/components/SlotsBreadcrumbs';\nimport { SlotsFilters } from '@modules/slots/components/SlotsFilters';\nimport { TileSlotsGrid } from '@modules/slots/components/TileSlotsGrid';\nimport {\n\tSORT_OPTION,\n\tStyledHeaderFilters,\n\tStyledHeaderTitleContainer,\n\tStyledSectionHeader,\n\tStyledSlotContainer,\n} from '@modules/slots/layouts/SlotCategory.layout';\n\nexport const SlotProviderLayout: FC<{ provider: ProviderDTO }> = ({\n\tprovider,\n}) => {\n\tconst providerId = provider?.id;\n\n\tconst providerName = provider?.name;\n\n\tconst [gamesPage, setGamesPage] = useState(DEFAULT_GAMES_PAGE);\n\n\tconst [filterSort, setFilterSort] = useState(SORT_OPTION[0]);\n\n\tconst [gamesCount, setGamesCount] = useState(GAMES_ON_PAGE);\n\n\tconst memoizedSetGamesCount = useCallback(\n\t\t(count) => setGamesCount(count),\n\t\t[],\n\t);\n\n\tconst [dataKey, setDataKey] = useState('');\n\n\tconst { callback } = useFetchGames();\n\n\tconst gamesCallback = useCallback(\n\t\t() =>\n\t\t\tcallback({\n\t\t\t\tcount: gamesCount,\n\t\t\t\tpage: gamesPage,\n\t\t\t\tprovider: providerId,\n\t\t\t\t...(filterSort.value && { orderBy: filterSort.value }),\n\t\t\t}),\n\t\t[gamesCount, callback, filterSort.value, gamesPage, providerId],\n\t);\n\n\tconst {\n\t\tdata: list,\n\t\tcount,\n\t\tloaded,\n\t\tloading,\n\t} = useGetDataArray(`${dataKey}${gamesPage}`, gamesCallback);\n\n\tconst showMoreHandler = () => {\n\t\tsetGamesPage((prevGamesPage) => prevGamesPage + 1);\n\t};\n\n\tconst setFilterSortHandler = (sort) => {\n\t\tsetFilterSort(sort);\n\t};\n\n\tuseEffect(() => {\n\t\tconst dataKey_ = `${providerId},${gamesCount},${filterSort.value}`;\n\n\t\tif (dataKey_ !== dataKey) {\n\t\t\tsetGamesPage(DEFAULT_GAMES_PAGE);\n\n\t\t\tsetDataKey(dataKey_);\n\t\t}\n\t}, [dataKey, filterSort.value, gamesCount, providerId]);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t{list?.length === 0 && loaded && }\n\n\t\t\t\t\t\n\n\t\t\t\t\t{!!loaded && list?.length > 0 && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import React, { useEffect, useState } from 'react';\n\nimport { MainLayout } from '@legacyApp/client/components/mainLayout';\nimport { pageEnhancer } from '@common/hoc/pageEnhancer';\nimport { handleGetStaticProps } from '@legacyApp/methods/router/handleGetStaticProps';\nimport { SlotProviderLayout } from '@modules/slots/layouts/SlotProvider.layout';\nimport { SlotPageJsonLd } from '@common/components/seo/SlotPageJsonLd';\nimport { getStaticPathsWrapper } from '@legacyApp/methods/getStaticPaths/getStaticPaths';\nimport { SlotsProvidersContext } from '@modules/slots/context/SlotsProvidersContext';\nimport { SlotsCategoriesContext } from '@modules/slots/context/SlotsCategoriesContext';\nimport { getDataFromArrayBySlug } from '@modules/slots/methods/getDataFromArrayBySlug';\nimport { TransNamespace } from '@legacyApp/client/modules/translation/TransNamespace';\nimport { DEFAULT_NAMESPACE } from '@legacyApp/client/modules/translation/translate.constants';\nimport { SLOTS_PAGE_ID } from '@modules/slots/constants/slots.page.config';\nimport { getSlotsCategories } from '@modules/slots/methods/getSlotsCategories';\nimport { getProviders } from '@modules/slots/methods/getProviders';\nimport { getProviderPageData } from '@modules/cmsHandler/methods/getProviderPageData';\nimport { getPathLocalized } from '@common/methods/getPathLocalized/getPathLocalized';\nimport Seo from '@common/components/default/Seo/Seo';\n\nconst PAGE_ID = SLOTS_PAGE_ID.PROVIDER;\n\nexport async function getStaticProps(props) {\n\tconst providers = await getProviders();\n\n\tconst providerData = getDataFromArrayBySlug(\n\t\tprops.params.provider,\n\t\tproviders?.list,\n\t);\n\n\tif (!providerData?.slug) {\n\t\treturn {\n\t\t\tredirect: {\n\t\t\t\tdestination: getPathLocalized({\n\t\t\t\t\tpathname: '/slots/provider/all',\n\t\t\t\t\tlocale: props.locale,\n\t\t\t\t}),\n\t\t\t\tstatusCode: 301,\n\t\t\t},\n\t\t};\n\t}\n\n\tconst categories = await getSlotsCategories();\n\n\tconst { page_content } = await getProviderPageData(\n\t\tprops.params.provider,\n\t\tprops.locale,\n\t);\n\tconst noIndex = false;\n\n\treturn await handleGetStaticProps(\n\t\t{\n\t\t\tlocale: props.locale,\n\t\t\tparams: {\n\t\t\t\t...props.params,\n\t\t\t\tproviders,\n\t\t\t\tcategories,\n\t\t\t\tproviderData,\n\t\t\t\tnoIndex,\n\t\t\t\tpage_content,\n\t\t\t},\n\t\t},\n\t\t[DEFAULT_NAMESPACE, TransNamespace.SLOTS],\n\t\ttrue,\n\t);\n}\n\nexport async function getStaticPaths(params) {\n\treturn getStaticPathsWrapper(params);\n}\n\nconst SlotsProviders = (context) => {\n\tconst { params, locale } = context;\n\tconst { providers, provider, providerData, categories } = params;\n\tconst [providers_, setProviders_] = useState(providers);\n\tconst [categories_, setCategories_] = useState(categories);\n\tconst [providerData_, setProviderData_] = useState(providerData);\n\n\tuseEffect(() => {\n\t\tif (providerData_?.slug === provider || !providers_?.list?.length) {\n\t\t\treturn;\n\t\t}\n\t\tsetProviderData_(getDataFromArrayBySlug(provider, providers_?.list));\n\t}, [\n\t\tprovider,\n\t\tproviderData_?.slug,\n\t\tproviders_?.list,\n\t\tproviders_?.list?.length,\n\t]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default pageEnhancer(SlotsProviders, {\n\tid: PAGE_ID,\n\tnoSeo: true,\n});\n","\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/slots/provider/[provider]\",\n function () {\n return require(\"private-next-pages/slots/provider/[provider]/index.tsx\");\n }\n ]);\n if(module.hot) {\n module.hot.dispose(function () {\n window.__NEXT_P.push([\"/slots/provider/[provider]\"])\n });\n }\n "],"names":["SlotProviderLayout","provider","providerId","id","providerName","name","useState","DEFAULT_GAMES_PAGE","gamesPage","setGamesPage","SORT_OPTION","filterSort","setFilterSort","GAMES_ON_PAGE","gamesCount","setGamesCount","memoizedSetGamesCount","useCallback","count","dataKey","setDataKey","callback","useFetchGames","gamesCallback","page","value","orderBy","useGetDataArray","list","data","loaded","loading","useEffect","dataKey_","SectionsTabNav","SlotsBreadcrumbs","title","SlotsFilters","sort","active","length","NoGames","TileSlotsGrid","items","ShowMore","displayingGames","allGames","showMore","prevGamesPage","ProvidersSection","PAGE_ID","SLOTS_PAGE_ID","pageEnhancer","context","params","locale","providers","providerData","categories","providers_","setProviders_","categories_","setCategories_","providerData_","setProviderData_","slug","getDataFromArrayBySlug","SlotsCategoriesContext","setCategories","SlotsProvidersContext","setProviders","Seo","titleProps","section_name","props","noindex","noIndex","nofollow","pageParams","SlotPageJsonLd","v2","noSeo","window","__NEXT_P","push"],"mappings":"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","debug_id":"98ebf7ad-9b19-5a8f-ac04-55b034bbcceb"}